Linux中FFmpeg与OpenCV多版本安装 | 您所在的位置:网站首页 › ffmpeg 版本查看 › Linux中FFmpeg与OpenCV多版本安装 |
背景
某项目的OpenCV需要用到处理视频功能,而OpenCV中的视频功能是基于ffmpeg开发的。 版本选择OpenCV版本:3.0 FFmpeg版本:需于OpenCV对应,在OpenCV源码目录opencv-3.0.0/3rdparty/ffmpeg/ffmpeg_version.cmake查看版本,笔者查询到的版本为 set(ALIASOF_libavcodec_VERSION 55.18.102) set(ALIASOF_libavformat_VERSION 55.12.100) set(ALIASOF_libavutil_VERSION 52.38.100) set(ALIASOF_libswscale_VERSION 2.3.100) set(ALIASOF_libavresample_VERSION 1.0.1)去网站FFmpeg查询与自己OpenCV对应的版本型号。 笔者查询到的为: image.png 安装配置安装FFmpeg的相关参数 ./configure --enable-shared --prefix=/your/install/path/ffmpeg-2.0.7/lib --disable-yasmyasm是一款汇编器,由于系统未安装yasm,故此禁用。 编译并安装 make -j20 && make install安装好之后查询ffmpeg版本 ffmpeg -version报错解决 ./ffmpeg: error while loading shared libraries: libavdevice.so.55: cannot open shared object file: No such file or directory原因是lib目录未加载到链接到系统库中,系统ld目录列表在/etc/ld.so.conf中。 需要创建一个文件并写入lib路径即可,执行命令: sudo vim /etc/ld.so.conf.d/ffmpeg.conf然后添加一行内容: /your/install/path/ffmpeg-2.0.7/lib之后保存并退出,然后执行 sudo ldconfig 使配置生效,现在再次执行 ./ffmpeg -version 显示就正常了 修改OpenCV中的FFmpeg目录 由于FFmpeg安装时没有将其安装到系统的默认路径下,所以需要在OpenCV中修改其安装路径。 找到$OpenCV_DIR/cmake/OpenCVFindLibsVideo.cmake文件的221行左右并添加进ffmpeg安装目录。 find_path(FFMPEG_INCLUDE_DIR "libavformat/avformat.h" PATHS /your/ffmpeg/install/path /usr/local /usr /opt PATH_SUFFIXES include DOC "The path to FFMPEG headers") 后记再多安装其他版本的ffmpeg步骤同上。 安装其他软件如果需要自定义安装路径可以按照上面的思路进行修改。 |
CopyRight 2018-2019 实验室设备网 版权所有 |